// 引入express模块
const express = require('express');
// 引入连接池
const pool = require('../pool.js');
// 创建路由对象
const router = express.Router();


// 1.用户注册路由
// 页面地址:http://127.0.0.1:3000/reg.html
// 请求方式:POST
// 路由地址:/v1/user/reg
// 接受参数:req.body
router.post('/reg',(req,res,next) => {
    // 获得post传递的参数
    var obj = req.body;
    // console.log(obj);
    // 使用sql语句
    pool.query('insert into user set ?',[obj],(err,data) => {
        // 如果遇到错误，传递错误信息给下一个中间件，并且终止程序
        if(err) {
            next(err);
            return;
        }
        // console.log(data);
        if(data.affectedRows === 1) {
            res.send({
                "code":1,
                "msg":"用户注册成功"
            })
        }else{
            res.send({
                "code":0,
                "msg":"用户注册失败"
            })
        }
    });
});

// 2.用户信息修改路由
// 请求页面 http://127.0.0.1:3000/edit.html
// 路由地址 /v1/user/edit
// 请求方式 put
// 请求参数 req.body
router.put('/edit',(req,res,next) => {
    // 获取put传递参数
    var obj = req.body;
    // console.log(obj);
    // 使用sql语句
    pool.query(`update user set ? where uid = ${obj.u_id}`,[obj],(err,data) => {
        // 如果出现错误，将错误传递给下一个中间件处理，并且终止程序
        if(err) {
            next(err);
            return;
        }
        // console.log(data);
        if(data.affectedRows === 1) {
            res.send({
                "code":1,
                "msg":"数据修改成功"
            })
        }else{
            res.send({
                "code":0,
                "msg":"数据修改失败"
            })
        }
    });
} );

// 用户登录接口
// 请求页面 http://127.0.0.1:3000/user/login.html
// 路由地址 /v1/user/login
// 请求方法 get
// 请求参数 req.query
router.get('/login',(req,res,next) => {
    // 获取get传递参数
    var obj = req.query
    // console.log(obj);
    // 使用sql语句
    pool.query('select * from user where u_num = ? and u_pwd = ?',[obj.u_num,obj.u_pwd],(err,data) => {
        // 如果存在错误，传递错误到下一个中间件，并终止程序
        if(err) {
            next(err);
            return;
        }
        // console.log(data);
        if(data.length > 0) {
            res.send({
                code:1,
                msg:"用户登录成功"
            });
        }else{
            res.send({
                code:0,
                msg:"用户登录失败"
            })
        }
    });
});

// 用户删除 
// 请求地址 http://127.0.0.1:3000/delete.html
// 路由地址 /v1/user/delUser
// 请求方式 delete
// 请求参数 req.query
router.delete('/delete:u_id',(req,res,next) => {
    // 获取delete传递的参数
    var obj = req.query.u_id
    // console.log(obj);
    // 使用sql语句
    pool.query('delete from user where u_id = ?',[obj],(err,data) => {
        // 如果存在错误，传递错误到下一个中间件，并终止程序
        if(err) {
            next(err);
            return;
        }
        // console.log(data);
        if(data.affectedRows === 1) {
            res.send({
                "code":1,
                "msg":"用户删除成功"
            })
        }else{
            res.send({
                "code":0,
                "msg":"用户删除失败"
            })
        }
    });
});


// 暴露出去
module.exports = router;